package interview.meituan;

/**
 * @author why
 * @data 2021/8/11
 *
 * 不用+-*实现两个数的相加。
 *
 * 先用异或 把不需要进位的留下
 * 之后用与 留出需要进位的 进位
 * 反复这个过程  看看是否有需要进位的
 */
public class AddBit {
    public static void main(String[] args) {
        System.out.println(add(9,21));
    }

    public static int add(int num1,int num2) {
        while (num2 != 0) {
            int res = num1 ^ num2;
            num2 = (num1 & num2) << 1;
            num1 = res;
        }
        return num1;
    }
}
